package mns;


/**
 * 
 * @author Alex Humesky
 *
 */
public interface MNSModule {
	public String getName();
	
	/**
	 * This should return a String of HTML that describes
	 * how the preferences page should look for this module,
	 * when a user sets up the module for him or herself.
	 * 
	 * All controls (text boxes, checkboxes, dropdown, etc)
	 * should be named, as their names and values will be passed
	 * as a String to either sendMessage or getMessage in the
	 * MNSInputModule and MNSOutputModule interfaces.
	 * 
	 * @return
	 */
	public String getOptionsFormHTML();

	/**
	 * This should return a String of HTML that describes
	 * the module in general.
	 * @return
	 */
	public String getDescriptionHTML();
	
}
